package com.andf.common.page;

import java.io.Serializable;
import java.util.List;

public final class Page implements Serializable
{
   
	private static final long serialVersionUID = -2714564306514258225L;

	// 每页行数
    private Integer row;

    // 当前页数
    private Integer page;

    // 总页数
    private Integer total;

    // 总记录数
    private Integer records;
    
    // 起始行号
    private Integer beginNum;
    
    // 结束行号
    private Integer endNum ;

    // 当前页记录
    private List<Object> rows;

    
    public Page( Integer row, Integer page,Integer records )
    {
    	this.row = row ;
    	this.page = page ;
    	this.records=records;
    	beginNum = row * (page - 1) + 1;
    	endNum   = beginNum + row ;
    	total = records%row==0?records/row:(records/row)+1;
    }
    
    /**
     * 取得每页行数
     * @return
     */
    public Integer getRow()
    {
        return row;
    }

    /**
     * 设置每页行数
     * @param rows
     */
    public void setRow(Integer row)
    {
        this.row = row;
    }

    /**
     * 取得当前页号
     * @return
     */
    public Integer getPage()
    {
        return page;
    }

    /**
     * 设置当前页号
     * @param page
     */
    public void setPage(Integer page)
    {
        this.page = page;
    }

    /**
     * 取得总页数
     * @return
     */
    public Integer getTotal()
    {
        return total;
    }

    /**
     * 设置总页数
     * @param total
     */
    public void setTotal(Integer total)
    {
        this.total = total;
    }

    /**
     * 取得总记录数
     * @return
     */
    public Integer getRecords()
    {
        return records;
    }

    /**
     * 设置总记录数
     * @param record
     */
    public void setRecords(Integer records)
    {
        this.records = records;
    }


    /**
     * 取得起始行号
     * @return
     */
	public Integer getBeginNum()
	{
		return beginNum;
	}

	/**
	 * 取得结束行号
	 * @return
	 */
	public Integer getEndNum()
	{
		return endNum;
	}
	/**
	 * 取得结果
	 * @return
	 */
	public List<Object> getRows() {
		return rows;
	}
	/**
	 * 设置结果
	 * @param rows
	 */
	public void setRows(List<Object> rows) {
		this.rows = rows;
	}
}
